Interactive job recommendation and application submission tools of employment website entities

ABSTRACT

Methods and apparatus are disclosed for interactive job recommendation and application submission tools of employment website entities. A system includes processor(s). The processor(s) are configured to retrieve, during a session on an employment app operating on a computing device, a first employment opportunity for the candidate based upon candidate information and employment preferences of the candidate. The processor(s) are configured to detect, during the session, an employment command received from the candidate via the computing device in response to presenting the first employment opportunity to the candidate via the computing device. The processor(s), in response to determining that the employment command is a first predefined single swipe motion across a touchscreen of the computing device, are configured to automatically populate an electronic application for the first employment opportunity utilizing the candidate information, automatically submit the electronic application to an employer, and present a second employment opportunity via the computing device.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.15/594,464, filed on May 12, 2017, which claims priority to U.S.Provisional Patent App. No. 62/489,316, filed on Apr. 24, 2017. Thecontents of these applications are incorporated herein by reference intheir entireties.

TECHNICAL FIELD

The present disclosure generally relates to employment website entitiesand, more specifically, interactive job recommendation and applicationsubmission tools of employment web site entities.

BACKGROUND

Typically, employment websites (e.g., CareerBuilder.com®) are utilizedby employers and job seekers. Oftentimes, an employment websiteincorporates a job board on which employers may post positions they areseeking to fill. In some instances, the job board enables an employer toinclude duties of a position and/or desired or required qualificationsofjob seekers for the position. Additionally, the employment website mayenable a job seeker to search through positions posted on the job board.If the job seeker identifies a position of interest, the employment website may provide an application to the job seeker for the job seeker tofill out and submit to the employer via the employment website.

An employment website may include thousands of job postings for aparticular location and/or field of employment, thereby making itdifficult for a job seeker to find positions of interest. Additionally,some job seekers may have difficulty identifying which of his or herqualifications (e.g., education, work experience, occupational licenses,etc.) are attractive to different employers. Furthermore, each employerwith a job posting on an employment website typically requires a jobseeker to submit an application for a position. In some instances,information required for an application for one position is at leastpartially the same information required for an application for anotherposition. As a result, a job seeker may inefficiently spend timerepeatedly identifying, generating, and submitting the same or similarinformation for applications for different positions. Thus, there is aneed for a user-friendly computer interface that assists a job seeker inidentifying jobs that are a good fit for the job seeker and ingenerating and submitting electronic applications for those jobs.

SUMMARY

The appended claims define this application. The present disclosuresummarizes aspects of the embodiments and should not be used to limitthe claims. Other implementations are contemplated in accordance withthe techniques described herein, as will be apparent to one havingordinary skill in the art upon examination of the following drawings anddetailed description, and these implementations are intended to bewithin the scope of this application.

Example embodiments are shown for interactive job recommendation andapplication submission tools of employment website entities. An exampledisclosed system for presenting employment opportunities and submittingapplications includes a database configured to store employmentpreferences of a candidate and candidate information associated with aresume of the candidate. The example disclosed system includes one ormore processors. The one or more processors are configured to retrieve,in real time during a session of the candidate on an employment appoperating on a computing device, a first employment opportunity for thecandidate based upon the candidate information and the employmentpreferences of the candidate. The one or more processors are configuredto detect, during the session, an employment command received from thecandidate via the computing device in response to presenting the firstemployment opportunity to the candidate via the computing device. Theone or more processors, in response to determining that the employmentcommand is a first predefined single swipe motion across a touchscreenof the computing device, are configured to automatically populate anelectronic application for the first employment opportunity utilizingthe candidate information, automatically submit the electronicapplication to an employer corresponding to the first employmentopportunity, and present a second employment opportunity via thecomputing device.

An example disclosed method for presenting employment opportunities andsubmitting applications includes storing, via a database, employmentpreferences of a candidate and candidate information associated with aresume of the candidate. The example disclosed method includesretrieving, in real time during a session of the candidate on anemployment app operating on a computing device, a first employmentopportunity for the candidate based upon the candidate information andthe employment preferences of the candidate. The example disclosedmethod includes detecting, during the session, an employment commandreceived from the candidate via the computing device in response topresenting the first employment opportunity to the candidate via thecomputing device. The example disclosed method includes, in response todetermining that the employment command is a first predefined singleswipe motion across a touchscreen of the computing device, automaticallypopulating an electronic application for the first employmentopportunity utilizing the candidate information; automaticallysubmitting the electronic application to an employer corresponding tothe first employment opportunity; and presenting a second employmentopportunity via the computing device.

An example disclosed tangible computer readable medium includesinstructions which, when executed, cause a machine to store employmentpreferences of a candidate and candidate information associated with aresume of the candidate. The instructions which, when executed, alsocause the machine to retrieve, in real time during a session of thecandidate on an employment app operating on a computing device, a firstemployment opportunity for the candidate based upon the candidateinformation and the employment preferences of the candidate. Theinstructions which, when executed, also cause the machine to detect,during the session, an employment command received from the candidatevia the computing device in response to presenting the first employmentopportunity to the candidate via the computing device. The instructionswhich, when executed, also cause the machine to, in response todetermining that the employment command is a first predefined singleswipe motion across a touchscreen of the computing device, automaticallypopulate an electronic application for the first employment opportunityutilizing the candidate information; automatically submit the electronicapplication to an employer corresponding to the first employmentopportunity; and present a second employment opportunity via thecomputing device.

BRIEF DESCRIPTION OF THE DRAWINGS

For a better understanding of the invention, reference may be made toembodiments shown in the following drawings. The components in thedrawings are not necessarily to scale and related elements may beomitted, or in some instances proportions may have been exaggerated, soas to emphasize and clearly illustrate the novel features describedherein. In addition, system components can be variously arranged, asknown in the art. Further, in the drawings, like reference numeralsdesignate corresponding parts throughout the several views.

FIG. 1 illustrates an example employment website entity that presentsemployment opportunities and submits applications for a candidate via anemployment app in accordance with the teachings herein.

FIG. 2 is a block diagram of electronic components of the employment website entity of FIG. 1 .

FIG. 3 illustrates an example interface of the employment app presentedto the candidate of FIG. 1 .

FIG. 4 illustrates another example interface of the employment apppresented to the candidate of FIG. 1 .

FIG. 5 illustrates another example interface of the employment apppresented to the candidate of FIG. 1 .

FIG. 6 illustrates another example interface of the employment apppresented to the candidate of FIG. 1 .

FIG. 7 illustrates another example interface of the employment apppresented to the candidate of FIG. 1 .

FIG. 8 illustrates another example interface of the employment apppresented to the candidate of FIG. 1 .

FIG. 9 illustrates another example interface of the employment apppresented to the candidate of FIG. 1 .

FIG. 10 illustrates another example interface of the employment apppresented to the candidate of FIG. 1 .

FIGS. 11A and 11B are flowcharts of an example method to present anemployment opportunity to a candidate in accordance with the teachingsherein.

FIG. 12 is a flowchart to perform an employment opportunity task for thecandidate of FIG. 11 .

DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS

While the invention may be embodied in various forms, there are shown inthe drawings, and will hereinafter be described, some exemplary andnon-limiting embodiments, with the understanding that the presentdisclosure is to be considered an exemplification of the invention andis not intended to limit the invention to the specific embodimentsillustrated.

The example methods and apparatus disclosed herein include an employmentapp that identifies candidate information from a resume of a job seeker,prompts the job seeker to provide employment preferences, identifies jobopportunities for the job seeker based on the candidate information andthe employment preferences, presents j ob opportunities to the j obseeker one at a time, and automatically populates and submits anelectronic application for a currently presented job opportunity for thejob seeker responsive to the job seeker providing a predefined swipemotion associated with submitting an application. The examples disclosedherein automatically populate the electronic application of the jobseeker for the job opportunity utilizing the candidate information ofthe job seeker's resume without requiring the job seeker to fill out theapplication. Thus, the examples disclosed herein provide anunconventional technical solution of automatically populating andsubmitting an electronic application for a job opportunity upon a jobseeker providing a single predefined input motion to a technologicalproblem of facilitating a job seeker in efficiently submittingapplications via an employment application or app. Further, theemployment app may enable the job seeker to identify a presented jobopportunity as spam to facilitate the employment website in preventingsubsequent presentation of the job opportunity to other job seekers. Theemployment app may also limit the number of job opportunities presentedto the job seeker and/or the number of applications submitted for thejob seeker within a predetermined time period to prevent the job seekerfrom inundating employers with applications.

Examples disclosed herein include an app manager that reviews a resumeof a candidate, which includes candidate information, in real timeduring a session of the candidate on an employment app. In someexamples, the app manager identifies the candidate based upon ausername, an candidate name, and/or an email corresponding to thecandidate. In some examples, the app manager identifies the candidateinformation in the resume that includes an education level, employmenttitle(s), employment task(s), etc. of the candidate.

As used herein, a “candidate” and a “job seeker” refer to a person whois searching for a job, position, and/or career. As used herein,“candidate information” refers to contact information and/orqualification information of a candidate provided in a resume of thecandidate. For example, candidate information includes a phone number,an email address, a street address, an education level, work experience,skills, occupational licenses, etc.

As used herein, a “session” refers to an interaction between a jobseeker and an employment app. Typically, a session will be relativelycontinuous from a start point to an end point. For example, a sessionmay begin when the candidate opens and/or logs onto the employmentwebsite and may end when the candidate closes and/of logs off of theemployment website. As used herein, “real time” refers to a time periodthat is simultaneous to and/or immediately after a candidate enters akeyword into an employment website. For example, real time includes atime duration before a session of the candidate with an employment appends.

As used herein, an “employment app,” an “employment application,” and an“employment bot” refer to a process of an employment website entity thatis executed on a mobile device (e.g., a smart phone, a smart watch, awearable, a tablet, etc.) and/or within a Internet browser of acandidate. As used herein, an “employment website entity” refers to anentity that operates and/or owns an employment website and/or anemployment app. As used herein, an “employment website” refers to awebsite and/or any other online service that facilitates job placement,career, and/or hiring searches. Example employment websites includeCareerBuilder.com®, Sologig.com®, etc.

During the session of the candidate on the employment app, the appmanager of the examples disclosed herein also is to prompt thecandidate, via a display, to provide one or more employment preferencesand is to receive the one or more employment preferences, via an inputscreen, upon prompting the candidate via the display. In some examples,the app manager prompts the candidate to provide a first employmentpreference, receives the first employment preference from the candidate,subsequently prompts the candidate to provide a second employmentpreference, receives the second employment preference from thecandidate, etc. In some examples, the app manager identifies preselectedemployment characteristics (e.g., a Chicago location, a Milwaukeelocation, a Grand Rapids location, etc.) based upon the candidateinformation included in the resume of the candidate, presents thepreselected employment characteristics to the candidate as selectablebuttons (e.g., electronic buttons) via the display, and receives aselection of one or more of the preselected employment characteristicsas one or more of the employment preferences. Further in some examples,the app manager compares the employment preferences to the candidateinformation of the resume and presents a warning to the candidate, viathe display, if at least one of the employment preferences does notcorrespond to the candidate information of the resume.

As used herein, an “employment preference” refers to a characteristic ofan employment opportunity that is of interest to a candidate. Forexample, employment preferences include an employment or job title, aregion or location of employment, an employment type, an income level,etc. As used herein, an “input screen” includes a screen, such as atouch screen, that receives input from a candidate. For example, a touchscreen includes the display and the input screen.

Examples disclosed herein also include an employment opportunityselector that retrieves, during the session, an employment opportunity(e.g., a first employment opportunity) from a job database based uponemployment search parameters of the candidate that includes, forexample, the candidate information and search history of a candidateprofile of the candidate. For example, the job database storesemployment opportunities submitted to the employment website entity byrecruiters and/or employers that are to be presented to one or morecandidates.

As used herein, an “employment opportunity,” a “job opportunity,” and a“job posting” is information representing a position for which arecruiter and/or an employer is hiring that is to be presented to one ormore candidates (e.g., via an employment app). As used herein, a“recruiter” refers to a person and/or entity (e.g., an employer such asa company, a corporation, etc.) that is soliciting and/or looking tohire one or more candidates for a position and/or a job. As used herein,an “employer” refers to a person and/or entity that employs one or morepeople for position(s) and/or job(s).

As used herein, an “employment search parameter” refers to searchparameters associated with a candidate that are utilized to identifyemployment opportunities to be presented to the candidate via anemployment app. Example search parameters include candidate informationobtained from a resume, employment preference(s) received upon promptingthe candidate, historical data of candidate activities on the employmentapp, etc.

Further, in some examples, the app manager and/or the employmentopportunity selector transforms words and/or phrases of employmentsearch parameters obtained via the candidate's resume and/or provided bythe candidate to enable or facilitate the employment opportunityselector in retrieving employment opportunities from the job database.As used herein, to “transform,” to “stem,” and to “perform wordnormalization” refer to processes in which a word and/or one or morewords of a phrase may be changed to its word stem, root, or base. Forexample, each of the words “performs,” “performed,” and/or “performing”might be transformed to “perform.”

During the session and upon the employment opportunity selectorretrieving the employment opportunity, the app manager presents, via thedisplay, the employment opportunity and detects, via the input screen,an employment command from the candidate. As used herein, an “employmentcommand” refers to an input provided by a candidate to instruct theemployment app to perform an action on behalf of the candidate relatedto an employment opportunity presented to the candidate.

Examples disclosed herein also include an application populator thatautomatically populates an electronic application for the employmentopportunity presented to the candidate (e.g., the first employmentopportunity) utilizing the candidate information included in thecandidate's resume in response to determining that the employmentcommand is a predefined input motion (e.g., a first predefined inputmotion) associated with populating an application. In some examples, theapp manager modifies the employment search parameters, a candidateprofile, and/or search history to present more or less employmentopportunities that have shared characteristics with the first employmentopportunity based upon the employment command provided by the candidate.In doing so, the App uses semantic analysis to improve its selectioncriterion for a given candidate based on the candidate's prior responsesto the App.

In some examples, the application populator determines whether theentire application is able to be populated based upon the candidateinformation. That is, the application populator determines whether thecandidate information of the resume includes all of the requestedinformation of the application. In such examples, if the applicationpopulator determines that the entire application is unable to bepopulated based upon the candidate information, the app manager promptsfor and receives additional information from the candidate that isrequested in the application. This may involve, for example, a responseintended to be explanatory in nature. In such cases, the app willpresent the question or scenario to the candidate and will populate thecandidate's response.

As used herein, to “populate” refers to a process in which informationthat an employer requests of a candidate for an application is obtainedand provided to complete or fill in the application. In some examples,the predefined input motion is a single swipe motion (e.g., a firstswipe motion) in a direction (e.g., a first direction) across the inputscreen. For example, upon detection of a single swipe motion, anapplication may be populated via an employment app utilizing candidateinformation of a candidate and submitted to a corresponding employer viathe employment app on behalf of the candidate.

As used herein, a “swipe motion,” a “swipe gesture,” and a “swipe” referto a continuous input motion in which a conductive object, such as ahuman finger, is pressed against and dragged in a direction across asurface capacitive input screen. As used herein, a “single swipe motion”refers to a swipe motion that extends substantially in one direction(e.g., rightward, upward, leftward, downward) along the entirety of theswipe motion. A single swipe motion may extend in a direction linearlyor in an arced manner. For example, the first predefined input motionassociated with populating an application is a single swipe motion in arightward direction. In some examples in which the input screen is atouch screen, a swipe motion includes a continuous motion in which auser touches the touch screen and drags his or her finger in a directionacross the touch screen. In some examples in which the input screen isnot a touch screen, a swipe motion includes a continuous motion in whicha user selects an object via curser and subsequently moves the curser ina direction across the touch screen.

In some examples, the app manager saves the employment opportunity forthe candidate in response to determining that the employment command isa second predefined input motion (e.g., a second swipe motion across theinput screen in a second direction). In such examples, the app managersaves the employment opportunity (e.g., in a candidate database) toenable the candidate to access, populate, and submit an application forthe employment opportunity at a later time. Further, in some example,the app manager skips the employment opportunity in response todetermining that the employment command is a third predefined inputmotion (e.g., a third swipe motion across the input screen in a thirddirection). The app manager skips the employment opportunity by notpopulating and submitting an application for the employment opportunityon behalf of the candidate. Additionally or alternatively, the appmanager flags the employment opportunity as spam in response todetermining that the employment command is a fourth predefined inputmotion (e.g., a fourth swipe motion across the input screen in a fourthdirection). To flag the employment opportunity as spam, the app manageridentifies the employment opportunity as a fraudulent employmentopportunity and causes the employment opportunity to be removed from ajob database. As used herein, “spam” refers to information that is notan employment opportunity but is submitted by a third party to theemployment website entity in the form of an employment opportunitysubmission.

Examples disclosed herein also include an employer manager thatautomatically submits the electronic application populated by theapplication populator to an employer corresponding to the employmentopportunity. That is, the employer manager submits the completedapplication to the employer that submitted the employment opportunity.

In some examples, the app manager presents another employmentopportunity (e.g., a second employment opportunity) in response toreceiving the employment command for the previous employment opportunity(e.g., the first employment opportunity). Further, in some examples, theapp manager limits a number of employment opportunities presented to thecandidate via the display in a predetermined time period (e.g., a firstpredetermined time period).

To limit the number of employment opportunities presented to, and/or thenumber of applications subsequently submitted on behalf of, thecandidate, the app manager monitors the number of employmentopportunities presented to the candidate in the first predetermined timeperiod and stops presenting employment opportunities to the candidatefor a subsequent predetermined time period (e.g., a second predeterminedtime period) if the number of employment opportunities presented duringthe first predetermined time period is greater than a first threshold.Additionally or alternatively, the app manager stops presentingemployment opportunities to the candidate for a predetermined timeperiod (e.g., a fourth predetermined time period) upon the app managerpresenting a predetermined number of employment opportunities during thefirst predetermined time period and/or the employer manager submitting apredetermined number of applications for the candidate in a previouspredetermined time period (e.g., a third predetermined time period) tocap the number of application submitted on behalf of the candidate.

Further, in some examples, when the employer manager receives a newemployment opportunity from an employer (e.g., while a candidate'ssession with the employment app is not underway (e.g., before or after asession), during a candidate's session with the employment app) thatshares characteristics “learned” by the employer manager to be ofinterest to the candidate based on prior inputs from the candidate, theemployer manager triggers an alert to the candidate. More specifically,upon receipt of a new employment opportunity, the app manager determineswhether the new employment opportunity corresponds to a candidateprofile of the candidate and presents the new employment opportunityand/or an alert for the new employment opportunity to the candidate viathe display (e.g., during an ongoing session or upon starting a newsession) in response to determining that the new employment opportunitycorresponds to the candidate profile.

Turning to the figures, FIG. 1 illustrates an example employment websiteentity 100 (e.g., CareerBuilder.com®) that presents employmentopportunities and submits applications for a candidate 102 via anemployment app 104 in accordance with the teachings herein. Asillustrated in FIG. 1 , the employment website entity 100 is incommunication with the candidate 102 and an employer 106.

In the illustrated example, the candidate 102 utilizes a mobile device108 (e.g., a smart phone, a tablet, a wearable a smart watch, a laptop,etc.) and/or any other type of computer to interact with the employmentapp 104 of the employment website entity 100. The candidate 102interacts with the employment app 104 during a session of the candidate102 on the employment app 104. For example, the employment app 104presents information (e.g., prompts, employment opportunities,descriptions of employment opportunities, requirements for employmentopportunities, descriptions of employers, etc.) to the candidate via adisplay 110 of the mobile device 108. In the illustrated example, thedisplay 110 is a touch screen. In such examples, the display 110 is aninput screen that enables the candidate 102 to provide input command(s)and/or information by touching the display 110.

For example, the candidate 102 submits or provides candidate data 112 tothe employment website entity 100 via the employment app 104. In someexamples, the candidate data 112 includes a candidate profile of thecandidate 102 and/or document(s) associated with the candidate 102(e.g., a resume, a cover letter). The resume, other document(s), and/orthe candidate profile includes candidate information of the candidate102, such as contact information (e.g., a street address, an emailaddress, a phone number, etc.), education level, attended school(s),previous employment title(s), previous place(s) of employment, performedemployment task(s), skill(s), license(s), certificate(s), membership(s),etc. In some examples, the candidate data 112 includes employmentpreferences for the candidate 102, such as preferred employment title(s)(e.g., UX designer, software engineer, server, etc.), location(s) orregion(s) of employment (e.g., a city, a state, an area code, etc.),industry(s) of interest (e.g., oil and gas, automotive, food services,etc.), employment type(s) (e.g., full-time, part-time, contract,seasonal, internship, etc.), income level(s), etc.

The employment website entity 100 sends one or more prompts 114 to themobile device 108 and/or another computer of the candidate 102. Forexample, the display 110 of the mobile device 108 presents the prompts114, via the employment app 104, to prompt the candidate 102 inproviding at least a portion of the candidate data 112 to the employmentwebsite entity 100. For example, the employment website entity 100 sendsthe prompts 114 to the candidate 102 via the employment app 104 toprompt the candidate 102 to provide a resume, other document(s),candidate information, and/or employment preferences.

The employment website entity 100 also sends employment opportunity data116 to the mobile device 108. The display 110 of the mobile device 108presents the employment opportunity data 116 to the candidate 102 viathe employment app 104. The employment opportunity data 116 includesinformation for one or more employment opportunities (e.g., a title, alocation, an industry, an employment type, an income level, etc.) tofacilitate the candidate in determining whether to submit correspondingapplication(s).

Additionally, the candidate 102 submits, provides, and/or otherwisesends one or more employment command data 118 to the employment websiteentity 100 via the employment app 104. The employment command data 118instructs the employment app 104 on whether to submit applications foremployment opportunities presented to the candidate 102 via theemployment app 104. For example, employment command data 118 may includean employment command associated with a first predefined input motionthat instructs the employment website entity 100 to automaticallypopulate and submit an electronic application for a presented employmentopportunity on behalf of the candidate 102, an employment commandassociated with a second predefined input motion that instructs theemployment website entity 100 to save a presented employment opportunityfor the candidate 102, an employment command associated with a thirdpredefined input motion that instructs the employment website entity 100to skip a presented employment opportunity, and/or an employment commandassociated with a fourth predefined input motion that instructs theemployment website entity 100 to flag a presented employment opportunityas spam.

In the illustrated example, the candidate data 112 and the employmentcommand data 118 provided by the candidate 102 is sent to a network 120(e.g., via a wired and/or a wireless connection). While FIG. 1 depictsthe network 120 receiving candidate data and employment command datafrom one candidate (e.g., the candidate data 112 and the employmentcommand data 118 of the candidate 102), the network 120 may receivecandidate data and/or employment command data from a plurality ofcandidates (e.g., a second candidate, a third candidate, etc.). Further,as illustrated in FIG. 1 , the employment website entity 100 collectsthe candidate data 112 and the employment command data 118 from thenetwork 120 (e.g., via a wired and/or wireless connection).Additionally, the employment website entity 100 sends the prompts 114and the employment opportunity data 116 to the candidate 102 via thenetwork 120. While FIG. 1 depicts the network 120 providing prompts andemployment opportunity data to one candidate, the network 120 mayprovide prompts and employment opportunity data to a plurality ofcandidates (e.g., a second candidate, a third candidate, etc.).

The employer 106 of the illustrated example is a company, a corporation,and/or another entity that is utilizing the employment app 104 of theemployment website entity 100 to hire a candidate (e.g., the candidate102) for an employment opportunity (e.g., an open position). While theillustrated example includes one employer (e.g., the employer 106) incommunication with the employment website entity 100, a plurality ofemployer may be in communication with the employment website entity 100to hire candidates utilizing the employment app 104. Additionally oralternatively, one or more recruiters may be in communication with theemployment website entity 100 to hire candidates utilizing theemployment app 104 on behalf of employers.

As illustrated in FIG. 1 , the employer 106 provides employer data 122to the employment website entity 100. For example, the employer data 122includes employer information, such as a company name, a number ofemployees, field(s) of industry, office location(s), years of business,etc. The employer data 122 also includes information regarding anemployment opportunity for which the employer 106 is looking to hire.For example, the employment opportunity information (e.g., employmentopportunity information 804 of FIG. 8 , employment opportunityinformation 1002 of FIG. 10 ) includes an employment title, a locationor region of employment, an industry, an employment type, expectedtasks, preferred or required years of experience, education level(s),certificate(s), license(s), etc. Additionally, the employer 106 of theillustrated example receives applicant data 124 from the employmentwebsite entity 100. For example, the applicant data 124 includes one ormore applications, resumes, contact, information etc. that weresubmitted by candidate(s) (e.g., the candidate 102) via the employmentapp 104 and/or an employment entity website of the employment websiteentity 100. As illustrated in FIG. 1 , the employer 106 sends theemployer data 122 to the employment website entity 100 via a network 126(e.g., via a wired and/or a wireless connection), and the employmentwebsite entity 100 sends the applicant data 124 to the employer 106 viathe network 126 (e.g., via a wired and/or a wireless connection).

The employment website entity 100 of the illustrated example includes anemployer manager 128, a job database 130, an app manager 132, acandidate database 134, an employment opportunity selector 136, and anapplication populator 138. The employer manager 128 receives theemployer data 122 from the employer 106 and/or other employer(s), addsemployment opportunity entries to the job database 130 based upon theemployer data 122, and provides the applicant data 124 to the employer106 and/or other employer(s). The job database 130 stores dataassociated with employment opportunities for which the employer 106and/or other employer(s) are looking to hire. The app manager 132receives the candidate data 112 and the employment command data 118 fromthe candidate 102 and/or other candidate(s), adds candidate informationto the candidate database 134 based upon the candidate data 112, andsends the prompts 114 and the employment opportunity data 116 to thecandidate 102 and/or other candidate(s). The employment opportunityselector 136 selects (e.g., based upon the candidate data 112 and theemployer data 122) and retrieves information on an employmentopportunity that is to be presented to the candidate 102 and/or othercandidate(s). Additionally, the application populator 138 populatesapplication(s) for the candidate 102 and/or other candidate(s) upon theapp manager 132 receiving corresponding employment command(s).

In operation, the employer manager 128 collects the employer data 122and adds information regarding employment opportunities for whichemployers (e.g., the employer 106) are looking to hire into the jobdatabase 130. The job database 130 stores the information related tothose employment opportunities. The app manager 132 sends the prompts114 to and collects the candidate data 112 from candidates (e.g., thecandidate 102) that are utilizing the employment app 104 to findemployment opportunities. Further, the app manager 132 adds thecandidate data 112 to the candidate database 134. The candidate database134 stores the candidate data 112 and/or other data related to thecandidates (e.g., employment opportunities saved by the candidates). Theapp manager 132 causes the employment opportunity selector 136 to selectan employment opportunity stored in the job database 130 based on thecandidate data 112 corresponding to the candidate 102 that is stored inthe candidate database 134. The app manager 132 sends the employmentopportunity data 116 corresponding to the employment opportunityselected by the employment opportunity selector 136 to the mobile device108 of the candidate 102 to present the employment opportunity to thecandidate 102 through the employment app 104. The app manager 132receives the employment command data 118 from the candidate 102 andcauses employment opportunity task(s) to be performed based upon theemployment command data 118. For example, when the employment commanddata 118 received from the candidate 102 corresponds to instruction(s)to submit an application for an employment opportunity, the app manager132 causes the application populator 138 to automatically populate andthe employer manager 128 to automatically submit the electronicapplication for the candidate 102.

FIG. 2 is a block diagram of electronic components 200 of the employmentwebsite entity 100. As illustrated in FIG. 2 , the electronic components200 include a microcontroller unit, controller or processor 202.Further, the electronic components 200 include memory 204, the jobdatabase 130, the candidate database 134, input device(s) 206, andoutput device(s) 208.

In the illustrated example, the processor 202 is structured to includethe employer manager 128, the app manager 132, the employmentopportunity selector 136, and the application populator 138. Theprocessor 202 of the illustrated example is any suitable processingdevice or set of processing devices such as, but not limited to, amicroprocessor, a microcontroller-based platform, an integrated circuit,one or more field programmable gate arrays (FPGAs), and/or one or moreapplication-specific integrated circuits (ASICs). In some examples, thememory 204 is volatile memory (e.g., RAM including non-volatile RAM,magnetic RAM, ferroelectric RAM, etc.), non-volatile memory (e.g., diskmemory, FLASH memory, EPROMs, EEPROMs, memristor-based non-volatilesolid-state memory, etc.), unalterable memory (e.g., EPROMs), read-onlymemory, and/or high-capacity storage devices (e.g., hard drives, solidstate drives, etc.). Further, in some examples, the memory 204 includesmultiple kinds of memory, particularly volatile memory and non-volatilememory.

The memory 204 is computer readable media on which one or more sets ofinstructions, such as the software for operating the methods of thepresent disclosure, can be embedded. The instructions may embody one ormore of the methods or logic as described herein. For example, theinstructions reside completely, or at least partially, within any one ormore of the memory 204, the computer readable medium, and/or within theprocessor 202 during execution of the instructions.

The terms “non-transitory computer-readable medium” and“computer-readable medium” include a single medium or multiple media,such as a centralized or distributed database, and/or associated cachesand servers that store one or more sets of instructions. Further, theterms “non-transitory computer-readable medium” and “computer-readablemedium” include any tangible medium that is capable of storing, encodingor carrying a set of instructions for execution by a processor or thatcause a system to perform any one or more of the methods or operationsdisclosed herein. As used herein, the term “computer readable medium” isexpressly defined to include any type of computer readable storagedevice and/or storage disk and to exclude propagating signals.

In the illustrated example, the input device(s) 206 enable a user, suchas an information technician of the employment website entity 100, toprovide instructions, commands, and/or data to the processor 202.Examples of the input device(s) 206 include one or more of a button, acontrol knob, an instrument panel, a touch screen, a touchpad, akeyboard, a mouse, a speech recognition system, etc.

The output device(s) 208 of the illustrated example display outputinformation and/or data of the processor 202 to a user, such as aninformation technician of the employment website entity 100. Examples ofthe output device(s) 208 include a liquid crystal display (LCD), anorganic light emitting diode (OLED) display, a flat panel display, asolid state display, and/or any other device that visually presentsinformation to a user. Additionally or alternatively, the outputdevice(s) 208 may include one or more speakers and/or any otherdevice(s) that provide audio signals for a user. Further, the outputdevice(s) 208 may provide other types of output information, such ashaptic signals.

FIG. 3-10 depict user interfaces of the employment app 104 that arepresented by the app manager 132 to the candidate 102, for example, viathe display 110 of the mobile device 108 as the candidate 102 interactswith the employment app 104.

For example, FIG. 3 illustrates an example interface 300 of theemployment app 104 that is initially presented to the candidate 102. Theinterface 300 includes a username textbox 302, a password textbox 304,and a sign-in button 306. To start a session of the candidate 102 on theemployment app 104, the candidate 102 is to enter a username designatedfor the candidate 102 into the username textbox 302, enter acorresponding password into the password textbox 304, and select thesign-in button 206. For example, the username designated for thecandidate 102 may be a username specific to the employment app 104, anemail address of the candidate 102 that is registered with theemployment website entity 100, a name of the candidate 102, and/or anyother word or phrase to identify the candidate 102. If the candidate 102has forgotten his or her password, the candidate 102 may select aforgot-password button 308 that prompts the employment website entity100 to send an email including a temporary password to an email addressof the candidate 102 that is registered with the employment websiteentity 100. Additionally, the interface 300 includes a sign-up button310 that facilitates a new user to create an account with the employmentwebsite entity 100.

FIG. 4 illustrates another example interface 400 of the employment app104 that is presented to the candidate 102 by the app manager 132. Theinterface 400 includes a notification 402 (e.g., a first notification)that informs the candidate 102 that the employment app 104 is tofacilitate the candidate 102 in finding employment opportunities.

FIG. 5 illustrates another example interface 500 of the employment app104 that is presented to the candidate 102 by the app manager 132. Asillustrated in FIG. 5 , the interface 500 includes a notification 502(e.g., a second notification) below the notification 402 informing thecandidate 102 that his or her resume has been identified and is beingreviewed (e.g., by the app manager) in real time during the session ofthe candidate 102 on the employment app 104. In other examples in whichthe employment website entity 100 does not have a resume correspondingto the candidate 102, the interface 500 may include a prompt to promptthe candidate 102 to submit a resume via the employment app 104. Forexample, the resume is reviewed to identify potential employment titlesof interest. After the resume of the candidate 102 is reviewed, a prompt504 (e.g., a first prompt) is subsequently included in the interface 500to prompt the candidate 102 to provide one or more employment areas ofinterest. In the illustrated example, the interface 500 also includespreselected employment characteristics (e.g., related to job titles)that are identified by the app manager 132 based upon the qualificationsof the candidate 102. For example, the interface 500 includes job-titlebuttons 506 (e.g., a first set of selectable buttons) that are selected,at least in part, based upon candidate information identified uponreviewing the resume of the candidate 102. In the illustrated example,the job-title buttons 506 include an “all” button, an “interactiondesigner” button, a “visual designer” button, a “UX/UI designer” button,a “UX designer” button, and a “none of these” button. Presentation ofthe job-title buttons 506 and/or other buttons corresponding to otherpreselected employment characteristics of the employment app 104 helpsolve the technical problem of matching job seekers with employers bypreventing the candidate 102 from being overwhelmed with employmentopportunities having characteristics that don't fit his or herqualifications and/or by preventing the employer 106 from receivingresumes from job seekers that aren't qualified for its position.

The candidate 102 selects one or more of the job-title buttons 506, inreal time during his or her session on the employment app 104, toprovide employment preferences by identifying which employment titlesare of interest to the candidate 102. In the illustrated example, thecandidate 102 has selected the “interaction designer” button and the “UXdesigner” button to indicate that he or she is interested in employmentpositions for an interaction designer and a UX designer. Further, thecandidate 102 may select the “all” button to select all of the job-titlebuttons 506 corresponding to an employment title or may select the “noneof these” button to deselect each of the job-title buttons 506corresponding to an employment title. For example, selection of the“none of these” button causes the employment opportunities that aresubsequently selected by the employment opportunity selector 136 forpresentation to the candidate 102 to have characteristics that aredifferent than those corresponding to the other job-title buttons 506.In examples in which the display 110 of the mobile device 108 is a touchscreen, the candidate 102 selects one or more of the job-title buttons506 by touching corresponding portion(s) of the display 110.Additionally or alternatively, the candidate 102 may provide audibleinstructions (e.g., via a microphone and speech-recognition software) toselect one or more of the job-title buttons 506. In the illustratedexample, the interface 500 also includes a selection 508 (e.g., a firstselection) that identifies which of the job-title buttons 506 have beenselected (e.g., the “interaction design” button and the “UX designer”button) by highlighting those of the job-title buttons 506 that havebeen selected by the candidate 102.

In some examples, the selection 508 and/or other selection(s) of theemployment preference(s) (e.g., a selection 614 of FIG. 6 , a selection706 of FIG. 7 ) is compared to the candidate information of the resumeof the candidate 102. If a selection of an employment preference (e.g.,a first employment preference) is identified as not corresponding to thecandidate information (e.g., selection for a position as a CEO when thecandidate information indicates the candidate 102 is a college student),the interface 500 and/or another interface may include a warning to thecandidate 102 that the selection does not fit with the candidateinformation. Further, in some examples, the employment app 104 mayprevent the candidate 102 from selecting an employment preference thatdoes not correspond with the candidate information to prevent theselection from affecting which employment opportunities will besubsequently presented to the candidate 102.

Thus, comparison of the selection(s) and the candidate information bythe application helps solve a technical problem of existing electronicjob matching software solutions by preventing the candidate from beingoverwhelmed with employment opportunities having characteristics thatdon't fit his or her qualifications and/or by preventing the employer106 from receiving resumes from job seekers that aren't qualified forits position.

FIG. 6 illustrates another example interface 600 of the employment app104 that is presented to the candidate 102 by the app manager 132. Asillustrated in FIG. 6 , the interface 600 includes another prompt 602(e.g., a second prompt) below the notification 402, the notification502, the prompt 504, and the job-title buttons 506. The prompt 602prompts the candidate 102 to identify any other employment title(s) ofinterest. The interface 600 also includes a response 604 (e.g., a firstresponse) that the candidate 102 provides in response to the prompt 602to identify additional employment preference(s) related to an employmenttitle. In the illustrated example, the response 604 identifies that thecandidate is interested in employment opportunities related a “Sr. UXDesigner” employment title. The candidate 102 may provide the response604 textually (e.g., via buttons) and/or audibly (e.g., via a microphoneand speech-recognition software).

The interface 600 of the illustrated example includes another prompt 606(e.g., a third prompt) that prompts the candidate 102 to provide aemployment location of interest and a corresponding response 608 (e.g.,a second response) of the candidate 102 that identifies employmentpreference(s) related to employment location(s) of interest (e.g., acity, a state, a country, a geographic region). In the illustratedexample, the response 608 of the candidate 102 identifies a city (e.g.,“Atlanta”) and a state (e.g., “GA” or Georgia). For example, thecandidate 102 provides the response 608 textually and/or audibly. Inother examples, the interface 600 may include buttons corresponding tovarious potential employment locations of interest that the candidate102 is to select.

In some examples, the response 604, the response 608 and/or otherresponse(s) for employment preference(s) are compared to the candidateinformation of the resume of the candidate 102. If a response for anemployment preference is identified as not corresponding to thecandidate information, the interface 600 and/or another interface mayinclude a warning to the candidate 102 that the response does not fitwith the candidate information. Further, in some examples, theemployment app 104 may prevent the candidate 102 from accepting aresponse that does not correspond with the candidate information toprevent the selection from affecting which employment opportunities willbe subsequently presented to the candidate. Thus, comparison of theresponse(s) and the candidate information helps solve the technicalproblem of matching job seekers with employers by preventing thecandidate 102 from being overwhelmed with employment opportunitieshaving characteristics that don't fit his or her qualifications and/orby preventing the employer 106 from receiving resumes from job seekersthat aren't qualified for its position.

The interface 600 of the illustrated example also includes anotherprompt 610 (e.g., a fourth prompt) that prompts the candidate 102 toprovide one or more employment types of interest. Additionally, theinterface 600 includes job-type buttons 612 (e.g., a second set ofselectable buttons) that enable the candidate to identify employmenttype(s) of interest. For example, the job-type buttons 612 include an“all” button, a “full-time” button, a “part-time” button, a “contract”button, a “seasonal” button, and an “internship” button. The candidate102 selects one or more of the job-type buttons 612 to provideemployment preferences related to employment types. In the illustratedexample, the candidate 102 has selected the “full-time” button and the“contract” button to indicate that he or she is interested in full-timework and/or contract work. Further, the candidate 102 may select the“all” button to select all of the job-type buttons 612 corresponding toan employment type. The interface 500 of the illustrated example alsoincludes a selection 614 (e.g., a second selection) that identifieswhich of the job-type buttons 612 have been selected (e.g., the“full-time” button and the “contract” button) by highlighting those ofthe job-type buttons 612 that have been selected by the candidate 102.In other examples, the interface 600 enables the candidate 102 toprovide (e.g., via text and/or audible instructions) an employment typepreference via the employment app 104 without displaying andfacilitating selection of dedicated job-type buttons.

FIG. 7 illustrates another example interface 700 of the employment app104 that is presented to the candidate 102 by the app manager 132. Asillustrated in FIG. 7 , the interface 700 includes another prompt 702(e.g., a fifth prompt) that prompts the candidate 102 to provide apreferred income level. The interface 700 also includes income-levelbuttons 704 (e.g., a third set of selectable buttons) that enable thecandidate to identify a minimum income level of interest. In theillustrated example, the income-level buttons 704 include an “any”button, a “$20 k+” button, a “$40 k+” button, a “$60 k+” button, an “$80k+” button, a “$100 k+” button, and a “$120 k+” button. The candidate102 selects one of the income-level buttons 704 to provide employmentpreferences related to income level. In the illustrated example, the“$80 k+” button is selected indicating that the preferred income levelof the candidate 102 is at least $80,000. For example, the interface 700includes a selection 706 (e.g., a third selection) that identifies theselected income level preference of the income-level buttons 704 byhighlighting the one of the income-level buttons 704 that have beenselected by the candidate 102. In some examples, the income-levelbuttons 704 presented on the interface 700 are identified (e.g., by theapp manager 132) based upon selection(s), response(s) and/or other inputprovided by the candidate 102. For example, the income-level buttons 704correspond to salaries upon the candidate 102 identifying that he or sheis interested in full-time employment and/or correspond to hourly ratesupon the candidate 102 identifying that he or she is interested inpart-time work. In other examples, the interface 700 enables thecandidate 102 to provide (e.g., via text and/or audible instructions) anincome level preference via the employment app 104 without displayingand facilitating selection of dedicated job-type buttons. While thisexample receives employment preferences related to job title, location,job type, salary, etc., one of ordinary skill in the art will understandthat there are many other inputs related to a job seeker identifying ajob of interest that the employment website entity 100 may collect fromthe candidate 102 via the employment app 104 and utilize to identifyemployment opportunities to present to the candidate 102.

The interface 700 of the illustrated example includes another prompt 708(e.g., a sixth prompt) that prompts the candidate 102 to provide anyadditional employment preferences. The interface 700 also includes aresponse 710 (e.g., a third response) to the prompt 708. In theillustrated example, the response 710 indicates that the candidate 102does not have any additional employment preferences upon which theinterface 700 includes a notification (e.g., a third notification)informing the candidate 102 that the employment website entity 100 willpresent employment opportunities to the candidate 102 via the employmentapp 104.

FIG. 8 illustrates another example interface 800 of the employment app104 that is presented to the candidate 102 by the app manager 132. Asillustrated in FIG. 8 , the interface 800 includes instructions 802,employment opportunity information 804, a details button 806 and anew-search button 808.

The interface 800 of the illustrated example presents an employmentopportunity to the candidate 102 and enables the candidate 102 toprovide an instructions based upon and corresponding to the presentedemployment opportunity. That is, the interface presents the employmentopportunity, receives instructions, and performs corresponding actionsrelated to the presented employment opportunity in real time during thesession of the candidate 102 on the employment app 104. The employmentopportunity that is presented via the interface 800 is selected (e.g.,via the app manager 132) based upon the previously collected candidateinformation (e.g., collected from the resume of the candidate 102)and/or employment preferences (e.g., collected via the interface 500 ofFIG. 5 , the interface 600 of FIG. 6 and/or the interface 700 of FIG. 7). In some examples, characteristics of the presented employmentopportunity (e.g., employment title, location, employment type, incomelevel, etc.) match all of the collected employment preferences of thecandidate 102. In other examples, the characteristics of the presentedemployment opportunity (e.g., employment title, location, employmenttype, income level, etc.) match a portion of the collected employmentpreferences. Additionally or alternatively, some characteristics of thepresented employment opportunity may be similar or approximate to theemployment preferences of the candidate 102. For example, if thecandidate 102 indicates that he or she is looks for employmentopportunities in Chicago, IL, the presented employment opportunity maybe located at a nearby location (e.g., Oak Park, Ill.). If the candidate102 indicates that he or she is looks for employment opportunities witha salary of $60,000 or greater, the presented employment opportunity mayoffer a salary of $55,000.

The instructions 802 included in the interface 800 instruct thecandidate 102 to perform one of a plurality of predefined input motions(e.g., “Swipe away!”). In some examples, the instructions 802 areselectable to provide additional instructions to the candidate 102regarding the predefined input motions (e.g., identification of themotions and the corresponding actions performed). In some examples, theadditional instructions are presented to the candidate 102 via theemployment app 104 prior to presenting employment opportunities to thecandidate 102. In the illustrated example, the interface 800 includesarrows sample to depict the predefined input motions. In other examples,the interface 800 may not include such depictions.

For example, the predefined input motions include a first predefinedinput motion 810, a second predefined input motion 812, a thirdpredefined input motion 814, and a fourth predefined input motion 816.In the illustrated example, the first predefined input motion 810 is asingle swipe motion in a first direction (e.g., a rightward direction),the second predefined input motion 812 is a single swipe motion in asecond direction (e.g., an upward direction), the third predefined inputmotion 814 is a single swipe motion in a third direction (e.g., aleftward direction), and the fourth predefined input motion 816 is asingle swipe motion in a fourth direction (e.g., a downward direction).The first predefined input motion 810 instructs the employment websiteentity 100 to automatically populate and submit an electronicapplication for the currently presented employment opportunity on behalfof the candidate 102, the second predefined input motion 812 instructsthe employment website entity 100 to save the currently presentedemployment opportunity for the candidate 102, the third predefined inputmotion 814 instructs the employment website entity 100 to skip thepresented employment opportunity, and the fourth predefined input motion816 flags the presented employment opportunity as spam.

As illustrated in FIG. 8 , the interface 800 includes the employmentopportunity information 804 of the presented employment opportunity. Inthe illustrated example, the employment opportunity information 804 ofthe interface 800 includes a photograph or image (e.g., of currentemployees), an employment title (e.g., “UX Designer”), an employer(e.g., “CareerBuilder”), an employment type (e.g., “Full-time”), alocation (e.g., “Norcross, GA”), and an income level (e.g., “$90 k).Additionally, the details button 806, upon being selected by thecandidate 102, causes another interface of the employment app 104 (e.g.,an interface 1000 of FIG. 10 ) that includes additional employmentopportunity information (e.g., employment opportunity information 1002)to be presented to the candidate 102. Further, the new-search button808, upon being selected by the candidate 102, causes a new search to bestarted (e.g., by returning to the interface 300 of FIG. 3 ).

FIG. 9 illustrates another example interface 900 of the employment app104 that is presented to the candidate 102 by the app manager 132. Morespecifically, the interface 900 of FIG. 9 illustrates the employment app104 while the first predefined input motion 810 is being performed bythe candidate 102. As the first predefined input motion 810 is beingperformed, one employment opportunity (e.g., a first employmentopportunity) moves off the display 110 (e.g., in a direction of thefirst predefined input motion 810) to enable another employmentopportunity (e.g., a second employment opportunity) to be presented.

FIG. 10 illustrates another example interface 1000 of the employment app104 that is presented to the candidate 102 by the app manager 132. Theinterface 1000 is presented upon the candidate 102 selecting thenew-search button 808 of FIG. 8 . As illustrated in FIG. 10 , theinterface 1000 includes additional employment opportunity information1002 regarding the employment opportunity presented via the interface800. Further, the interface 1000 includes a return button 1004 thatcauses the employment app 104 to return to the interface 800 upon beingselected by the candidate 102. In the illustrated example, the firstpredefined input motion 810, the second predefined input motion 812, thethird predefined input motion 814, and/or the fourth predefined inputmotion 816 may be performed by the candidate 102 while the interface1000 is presented. Additionally or alternatively, the candidate 102 mayselect the return button 1004 to return to the interface 800 prior toperforming the first predefined input motion 810, the second predefinedinput motion 812, the third predefined input motion 814, or the fourthpredefined input motion 816 for the presented employment opportunity.

FIGS. 11A and 11B is a flowchart of an example method 1100 to present anemployment opportunity to a candidate. The flowchart of FIGS. 11A and11B is representative of machine readable instructions that are storedin memory (such as the memory 204 of FIG. 2 ) and include one or moreprograms which, when executed by a processor (such as the processor 202of FIG. 2 ), cause the employment website entity 100 to implement theexample employer manager 128, the example app manager 132, the exampleemployment opportunity selector 136, and/or the example applicationpopulator 138 of FIGS. 1 and 2 . While the example program is describedwith reference to the flowchart illustrated in FIGS. 11A and 11B, manyother methods of implementing the example employer manager 128, theexample app manager 132, the example employment opportunity selector136, and/or the example application populator 138 may alternatively beused. For example, the order of execution of the blocks may berearranged, changed, eliminated, and/or combined to perform the method1100. Further, because the method 1100 is disclosed in connection withthe components of FIGS. 1-10 , some functions of those components willnot be described in detail below.

Initially, at block 1102 of FIG. 11A, the app manager 132 identifies thecandidate 102 utilizing the employment app 104. For example, the appmanager 132 identifies the candidate 102 based upon a username, anemail, and/or a name designated for the candidate 102. In some examples,the app manager 132 identifies the candidate 102 upon determining thatthe username, email and/or name entered by the candidate 102 in theusername textbox 302 of the interface 300 of the employment app 104matches and/or otherwise corresponds with a username, email and/or namestored in the candidate database 134 that corresponds to the candidate102.

At block 1104, the app manager 132 determines whether the candidate 102has a resume stored in the candidate database 134 of the employmentwebsite entity 100. In response to determining that the candidate 102does not have a resume stored in the candidate database 134, the method1100 proceeds to block 1106 at which the app manager 132 prompts thecandidate 102 to submit a resume through the employment app 104. Atblock 1108, the app manager 132 receives the resume that the candidate102 submitted through the employment app 104 and stores the resume inthe candidate database 134.

Upon determining that the candidate database 134 has the resume at block1104 or upon receiving the resume at block 1108, the method 1100proceeds to block 1110 at which the app manager 132 reviews the resumeof the candidate 102 in real time during the session of the candidate102 on the employment app 104. At block 1112, the app manager 132identifies candidate information that is included in the resume of thecandidate 102. For example, the app manager 132 identifies contactinformation, an education level, attended school(s), previous employmenttitle(s), previous place(s) of employment, performed employment task(s),skill(s), license(s), certificate(s), membership(s), etc. of thecandidate 102 from within his or her resume. In some examples, the appmanager 132 transforms one or more words or phrases of the candidateinformation to facilitate utilization of the candidate information inthe selection of employment opportunities to present to the candidate102.

At block 1114, the app manager 132 determines whether the employermanager 128 has received new employment opportunity(s) from an employer(e.g., the employer 106). For example, the app manager 132 may determinewhether the employer manager 128 has received a new employmentopportunity while a session of the candidate 102 with the employment app104 is underway and/or is not underway (e.g., before and/or after asession). In response to the app manager 132 determining that theemployer manager 128 has not received a new employment opportunity, themethod 1100 proceeds to block 1118 of FIG. 11B. Otherwise, in responseto the app manager 132 determining that the employer manager 128 hasreceived a new employment opportunity, the method 1100 proceeds to block1116 of FIG. 11A.

At block 1116, the app manager 132 determines whether the new employmentopportunity corresponds to the candidate profile (e.g., including thecandidate information and/or the search history). For example, the appmanager 132 compares the new employment opportunity and the candidateprofile to identify whether the candidate 102 would be interested in thenew employment opportunity and/or whether the employer of the newemployment opportunity would be interested in the candidate 102. Inresponse to the app manager 132 determining that the new employmentopportunity corresponds to the candidate profile, the method 1100proceeds to block 1128 of FIG. 11B (at which the new employmentopportunity is presented to the candidate 102. That is, the app manager132 presents a new employment opportunity to the candidate 102 via theemployment app 104 if the characteristics of the new employmentopportunity match the candidate profile of the candidate 102. Otherwise,in response to the app manager 132 determining that the new employmentopportunity does not correspond to the candidate profile, the method1100 proceeds to block 1118 of FIG. 1B.

At block 1118, the app manager 132 prompts the candidate 102 to providean employment preference (e.g., a first employment preference) via aninterface (e.g., the interface 500 of FIG. 5 , the interface 600 of FIG.6 , the interface 700 of FIG. 7 ) in real time during the session of thecandidate 102 on the employment app 104. For example, the employmentpreference includes an employment title, a region or location ofemployment, an employment type, an income level, etc. At block 1120, theapp manager 132 receives the employment preference from the candidate102 via the employment app 104 in real time during his or her session onthe employment app 104. The app manager 132 receives the employmentpreference via a selection of button(s) (e.g., physical buttons, buttonspresented via a touch screen) and/or audible instruction(s) (e.g.,received via a microphone and identified via speech-recognitionsoftware) provided by the candidate 102.

In some examples, the app manager 132 prompting the candidate 102 atblock 1118 includes the app manager 132 identifying preselectedemployment characteristics based upon the candidate information of theresume and/or other information of the candidate profile of thecandidate 102. The app manager 132 presents the preselected employmentcharacteristics to the candidate 102 as button(s) (e.g., the job-titlebuttons 506 of FIG. 5 , the job-type buttons 612 of FIG. 6 , theincome-level buttons 704 of FIG. 7 ) via the display 110. In suchexamples, the app manager 132 receives the employment preference(s) atblock 1120 via a selection (e.g., the selection 508 of FIG. 5 , theselection 614 of FIG. 6 , the selection 706 of FIG. 7 ) of one or moreof the buttons. Additionally or alternatively, the app manager 132receives the employment preference(s) at block 1120 via a response(e.g., the response 604 of FIG. 6 , the response 608 of FIG. 6 ) to aprompt (e.g., the prompt 602 of FIG. 6 , the prompt 606 of FIG. 6 )presented at block 1118. In some such examples, the app manager 132transforms the employment preference of the response to facilitateselection of employment opportunities that are to be presented to thecandidate 102.

At block 1122, the app manager 132 determines whether one or more of theemployment preference(s) received at block 1120 correspond to thecandidate information of the resume of the candidate 102. For example,the app manager 132 determines whether the employment preference(s)correspond to the candidate information upon comparing the employmentpreference(s) and the candidate information. In response to the appmanager 132 determining that one or more of the employment preference(s)do not correspond to the candidate information, the method 1100 proceedsto block 1124 at which the app manager 132 presents a warning to thecandidate 102 indicating that the provided employment preference(s) donot correspond to the qualifications of the candidate 102. In someexamples, the employment app 104 may prevent the provided employmentpreference(s) that do not correspond to the qualifications of thecandidate 102 from affecting which employment opportunities will bepresented to the candidate 102. Upon the app manager 132 presenting thewarning at block 1124 or determining at block 1122 that one or more ofthe employment preference(s) do not correspond with the candidateinformation, the method 1100 proceeds to block 1126.

At block 1126, the app manager 132 determines whether there is anotheremployment preference to collect from the candidate 102. In response todetermining that there is another employment preference to collect, themethod 1100 returns to block 1118. For example, the method 1100 returnsto block 1118 to enable the app manager 132 to prompt the candidate 102to provide a second employment preference and to receive the secondemployment preference from the candidate 102. Otherwise, in response todetermining that there is not another employment preference to collect,the method 1100 proceeds to block 1128.

At block 1128, the app manager 132 presents an employment opportunity(e.g., a first employment opportunity) to the candidate 102 via theemployment app 104. In some examples, upon the app manager 132determining at block 1126 that there is no other employment preferenceto receive, the employment opportunity selector 136 selects andretrieves the employment opportunity from the candidate database 134 inreal time during the session of the candidate 102. For example, theemployment opportunity selector 136 selects the employment opportunityfrom the entries stored in the candidate database 134 based upon thecandidate information and/or the employment preference(s) previouslycollected from the candidate 102.

In some examples, the employment opportunity selector 136 selects anemployment opportunity whose characteristics (e.g., employment title,location, employment type, income level, etc.) match all of those of theemployment preferences of the candidate 102 collected by the app manager132. In other examples, the employment opportunity selector 136 selectsan employment opportunity whose characteristics match some (e.g., aportion) of those of the employment preferences of the candidate 102.Additionally or alternatively, the employment opportunity selector 136selects an employment opportunity whose characteristics are similar orapproximate to those of the employment preferences of the candidate 102.

Further, in some examples, upon the app manager 132 determining at block1116 that the characteristics of a new employment opportunitycorresponds to the candidate profile of the candidate 102, theemployment opportunity selector 136 presents the new employmentopportunity to the candidate 102 (e.g., during an ongoing session orupon initiating a new session of the candidate 102 with the employmentapp 104). In other examples in which the app manager 132 determines thatthe new employment opportunity corresponds to the candidate profile ofthe candidate 102, the app manager 132 may present an alert alerting thecandidate 102 to the new employment opportunity.

At block 1130, the app manager 132 detects an employment command fromthe candidate 102 during his or her session on the employment app 104.For example, the app manager 132 detects a predefined input motion suchas the first predefined input motion 810, the second predefined inputmotion 812, the third predefined input motion 814, the fourth predefinedinput motion 816 that the candidate 102 and/or a selection of thenew-search button 808 that the candidate 102 provides through theemployment app 104 via a touch screen (e.g., the display 110) of themobile device 108. Additionally or alternatively, the app manager 132may detect an employment command that is provided by the candidate 102via audible instructions (e.g., a voice command received via amicrophone and analyzed via speech-recognition software). For example,the candidate 102 provides and the app manager 132 receives audibleinstructions to a first predefined input command “apply,” a secondpredefined input command to “save,” a third predefined input command to“skip,” and/or a fourth predefined input command to “flag.”

At block 1132, the app manager 132 determines whether to start a newsearch for the candidate 102. For example, the app manager 132determines to start a new search upon detecting that the employmentcommand provided by the candidate 102 corresponds to a selection of thenew-search button 808. In response to the app manager 132 determining tostart a new search, the method 1100 returns to block 1118. Otherwise, inresponse to the app manager 132 determining not to start a new search,the method 1100 proceeds to block 1134.

At block 1134, the processor 202 of the employment website entity 100performs an employment opportunity task for the candidate 102 based uponthe employment command detected at block 1130. For example, as disclosedin further detail below with respect to FIG. 12 , the applicationpopulator 138 may populate and the employer manager 128 may submit anapplication for the candidate 102, the app manager 132 may save theemployment opportunity for the candidate 102, the app manager 132 mayskip and the employment opportunity selector 136 may record or log theskipping of the employment opportunity for the candidate 102, and/or theemployment opportunity selector 136 may document the employmentopportunity as spam at block 1134.

At block 1136, upon performing the employment opportunity task, the appmanager 132 determines whether the number of employment opportunitiespresented during a first time period (e.g., 5 minutes, 15 minutes, 1hour, 12 hours, 1 day, 3 days, 1 week, etc.) is greater than a firstthreshold. In response to the app manager 132 determining that thenumber of presented employment opportunities is greater than the firstthreshold, the method 1100 ends to limit the number of employmentopportunities presented to the candidate 102 during the firstpredetermined time period. That is, the app manager 132 monitors thenumber of employment opportunities presented to the candidate 102 duringthe first predetermined time period and stops presenting employmentopportunities to the candidate 102 for a second predetermined timeperiod (e.g., 5 minutes, 15 minutes, 1 hour, 12 hours, 1 day, etc.) upondetermining that the number of presented employment opportunitiesexceeds the first threshold. Otherwise, in response to the app manager132 determining that the number of presented employment opportunities isless than or equal to the first threshold, the method 1100 proceeds toblock 1138.

At block 1138, the app manager 132 determines whether the number ofapplications submitted for the candidate 102 during a third time period(e.g., 5 minutes, 15 minutes, 1 hour, 12 hours, 1 day, 3 days, 1 week,etc.) is greater than a third threshold. In response to the app manager132 determining that the number of submitted applications is greaterthan the second threshold, the method 1100 ends to limit the number ofapplications presented to and/or submitted for the candidate 102 duringthe third predetermined time period. That is, the app manager 132monitors the number of applications submitted for the candidate 102during the third predetermined time period and stops the employermanager 128 from submitting applications on behalf of and/or stopspresenting employment opportunities to the candidate 102 for a fourthpredetermined time period (e.g., 5 minutes, 15 minutes, 1 hour, 12hours, 1 day, etc.) upon determining that the number of submittedapplications exceeds the second threshold. Otherwise, in response to theapp manager 132 determining that the number of submitted applications isless than or equal to the second threshold, the method 1100 returns toblock 1128 to present another employment opportunity. That is, themethod 1100 returns to block 1128 to enable the app manager 132 topresent another employment opportunity (e.g., a second employmentopportunity) upon receiving the employment command for the firstemployment opportunity presented to the candidate 102.

FIG. 12 is a flowchart of an example method 1134 to perform the block1134 of FIG. 11B to perform an employment opportunity task for acandidate. The flowchart of FIG. 12 is representative of machinereadable instructions that are stored in memory (such as the memory 204of FIG. 2 ) and include one or more programs which, when executed by aprocessor (such as the processor 202 of FIG. 2 ), cause the employmentwebsite entity 100 to implement the example employer manager 128, theexample app manager 132, and/or the example application populator 138 ofFIGS. 1 and 2 . While the example program is described with reference tothe flowchart illustrated in FIG. 12 , many other methods ofimplementing the example employer manager 128, the example app manager132, and/or the example application populator 138 may alternatively beused. For example, the order of execution of the blocks may berearranged, changed, eliminated, and/or combined to perform the method1134. Further, because the method 1134 is disclosed in connection withthe components of FIGS. 1-10 , some functions of those components willnot be described in detail below.

Initially, at block 1202, the app manager 132 determines whether theemployment command is the first predefined input motion 810. Forexample, the first predefined input motion 810 is a first swipe motionacross an input screen (e.g., the display 110 of the mobile device 108)in a first direction (e.g., a rightward direction). In response to theapp manager 132 determining that the employment command is the firstpredefined input motion 810, the method 1134 proceeds to block 1204. Atblock 1204, the application populator 138 is to determine whether theentire application is able to be populated on behalf of the candidate102 based upon the candidate information from the resume of thecandidate 102. That is, the application populator 138 determines whetherthe candidate information of the resume includes all of the requestedinformation for the application. In response to the applicationpopulator 138 determining that the entire application is unable to bepopulated utilizing only the candidate information, the method 1134proceeds to block 1206. At block 1206, the app manager 132 prompts forand receives additional information from the candidate 102 that enablesthe application populator 138 to populate the application on behalf ofthe candidate 102. Upon the app manager 132 receiving the additionalinformation, the method 1134 proceeds to block 1208. Otherwise, inresponse to the application populator 138 determining that theapplication is able to be populated utilizing only the candidateinformation, the method also proceeds to block 1208.

At block 1208, the application populator 138 automatically populates, inreal time during the session of the candidate 102 on the employment app104, an electronic application for the presented employment opportunity(e.g., the first presented employment opportunity) utilizing thecandidate information and/or any other information previously providedby the candidate 102. For example, the application populator 138receives an application for the presented employment opportunity (e.g.,via the employer manager 128 and/or the app manager 132), identifiesinformation requested in the application, identifies candidateinformation included in the resume of the candidate 102 that correspondsto the requested information, and populates a completed application forthe candidate 102 utilizing his or her candidate information. Forexample, an application for one employment opportunity may requestdifferent information compared to an application for another employmentopportunity. The application populator 138 populates the differentapplications by identifying the requested information for each of theapplications and identifying the candidate information of the candidate102 that correspond to each of the applications. Thus, the applicationpopulator 138 enables the candidate 102 to quickly populate (andsubsequently file) different applications for different employmentopportunities. At block 1210, the employer manager 128 automaticallysubmits the populated electronic application of the candidate 102 to theemployer 106 for the employment opportunity.

Otherwise, in response to the app manager 132 determining at block 1202that the employment command is not the first predefined input motion810, the method 1134 proceeds to block 1212 at which the app manager 132determines whether the employment command is the second predefined inputmotion 812. For example, the second predefined input motion 812 is asecond swipe motion across the input screen (e.g., the display 110) in asecond direction (e.g., an upward direction). In response to the appmanager 132 determining that the employment command is the secondpredefined input motion 812, the method 1134 proceeds to block 1214 atwhich the app manager 132 saves the employment opportunity in thecandidate database 134 for the candidate 102. For example, the appmanager 132 stores information corresponding to the employmentopportunity and the candidate 102 in the candidate database 134 toenable the candidate 102 to enable the candidate 102 to access theapplication at a later time for subsequent population and submission tothe employer 106. Otherwise, in response to the app manager 132determining at block 1212 that the employment command is not the secondpredefined input motion 812, the method 1134 proceeds to block 1216.

At block 1216, the app manager 132 determines whether the employmentcommand is the third predefined input motion 814. For example, the thirdpredefined input motion 814 is a third swipe motion across the inputscreen (e.g., the display 110) in a third direction (e.g., a leftwarddirection). In response to the app manager 132 determining that theemployment command is the third predefined input motion 814, the method1134 proceeds to block 1218 at which the app manager 132 skips theemployment opportunity for the candidate 102. For example, the appmanager 132 skips the employment opportunity by causing an applicationfor the employment opportunity to not be populated or submitted for thecandidate 102. In some examples, the employment opportunity selector 136records or logs in the job database 130 that the employment opportunityhas been skipped by the candidate 102 to delay or prevent the employmentopportunity from being presented to the candidate 102 again at a latertime. Otherwise, in response to the app manager 132 determining at block1216 that the employment command is not the third predefined inputmotion 814, the method 1134 proceeds to block 1220.

At block 1220, the app manager 132 determines whether the employmentcommand is the fourth predefined input motion 816. For example, thefourth predefined input motion 816 is a fourth swipe motion across theinput screen (e.g., the display 110) in a fourth direction (e.g., adownward direction). In response to the app manager 132 determining thatthe employment command is the fourth predefined input motion 816, themethod 1134 proceeds to block 1222 at which the app manager 132 flagsthe employment opportunity as spam. For example, the app manager 132instructs the employment opportunity selector to remove the employmentopportunity flagged as spam from the job database 130. The employmentopportunity selector 136 removes the employment opportunity from the jobdatabase 130 upon receiving a predetermined number of instructions fromthe app manager 132 to do so. That is, the employment opportunityselector 136 removes the employment opportunity from the job database130 after the employment has been flagged as spam a predetermined numberof times by candidates (e.g., the candidate 102) utilizing theemployment app 104. Otherwise, in response to the app manager 132determining at block 1216 that the employment command is not the fourthpredefined input motion 816, the method 1134 ends.

Further, upon block 1210, block 1214, block 1218, or block 1222 beingexecuted, the method 1134 proceeds to block 1224 at which the appmanager 132 modifies the candidate profile (e.g., including a searchhistory, employment search parameters, etc.) that are utilized by theemployment opportunity selector 136 to identify employment opportunitiesfor presentation to the candidate 102 via an employment app 104. The appmanager 132 modifies the employment search parameters for later searchesto cause the employment opportunity selector 136 to subsequently presentmore or less employment opportunities that have shared characteristicswith the presented employment opportunity based upon the employmentcommand provided by the candidate 102. For example, the app manager 132utilizes machine learning algorithms (e.g., linear regressions, decisiontrees, neural networks, support vector machines, clustering, Bayesiannetworks, nearest neighbors, K-means, etc.) that analyze the searchhistory of the candidate 102 to develop employment search parameters forthe candidate 102 that consistently identify employment opportunitiesfor which the candidate 102 is qualified and interested. When thecandidate 102 has instructed the employer manager 128 to submit anapplication for the presented employment opportunity, the app manager132 causes the employment opportunity selector 136 to select moreemployment opportunities that have shared characteristics with thepresented employment opportunity. When the candidate 102 has instructedthe app manager 132 to skip the employment opportunity, the app manager132 causes the employment opportunity selector 136 to select lessemployment opportunities that have shared characteristics with thepresented employment opportunity. Upon executing block 1224, the method1134 ends.

In this application, the use of the disjunctive is intended to includethe conjunctive. The use of definite or indefinite articles is notintended to indicate cardinality. In particular, a reference to “the”object or “a” and “an” object is intended to denote also one of apossible plurality of such objects. Further, the conjunction “or” may beused to convey features that are simultaneously present instead ofmutually exclusive alternatives. In other words, the conjunction “or”should be understood to include “and/or”. The terms “includes,”“including,” and “include” are inclusive and have the same scope as“comprises,” “comprising,” and “comprise” respectively.

The above-described embodiments, and particularly any “preferred”embodiments, are possible examples of implementations and merely setforth for a clear understanding of the principles of the invention. Manyvariations and modifications may be made to the above-describedembodiment(s) without substantially departing from the spirit andprinciples of the techniques described herein. All modifications areintended to be included herein within the scope of this disclosure andprotected by the following claims.

What is claimed is:
 1. A system for presenting employment opportunitiesand submitting applications, the system comprising: a databaseconfigured to store employment preferences of a candidate and candidateinformation associated with a resume of the candidate; and one or moreprocessors configured to: retrieve, in real time during a session of thecandidate on an employment app operating on a computing device, a firstemployment opportunity for the candidate based upon the candidateinformation and the employment preferences of the candidate; detect,during the session, an employment command received from the candidatevia the computing device in response to presenting the first employmentopportunity to the candidate via the computing device; in response todetermining that the employment command is a first predefined singleswipe motion across a touchscreen of the computing device: automaticallypopulate an electronic application for the first employment opportunityutilizing the candidate information; automatically submit the electronicapplication to an employer corresponding to the first employmentopportunity; and present a second employment opportunity via thecomputing device.
 2. The system of claim 1, wherein the one or moreprocessors are configured to identify the candidate information from theresume of the candidate, wherein the candidate information includes atleast one of an education level, an employment title, or an employmenttask.
 3. The system of claim 1, wherein the one or more processors areconfigured to receive the employment preferences from the candidate uponpresenting at least one of a prompt or preselected employmentcharacteristics to the candidate via the computing device.
 4. The systemof claim 1, wherein the first predefined single swipe motion is a swipemotion across the touchscreen in a first direction.
 5. The system ofclaim 4, wherein the one or more processors are configured to save thesecond employment opportunity in the database for subsequent access bythe candidate in response to determining that the employment command isa second predefined single swipe motion, wherein the second predefinedsingle swipe motion is a single swipe motion across the touchscreen in asecond direction.
 6. The system of claim 4, wherein the one or moreprocessors are configured to skip the second employment opportunitywithout populating or submitting the electronic application for thecandidate for the first employment opportunity in response todetermining that the employment command is a third predefined singleswipe motion, wherein the third predefined single swipe motion is asingle swipe motion across the touchscreen in a third direction.
 7. Thesystem of claim 4, wherein the one or more processors are configured toflag the second employment opportunity as spam in response todetermining that the employment command is a fourth predefined singleswipe motion, wherein the fourth predefined single swipe motion is asingle swipe motion across the touchscreen in a fourth direction.
 8. Amethod for presenting employment opportunities and submittingapplications, the method comprising: storing, via a database, employmentpreferences of a candidate and candidate information associated with aresume of the candidate; retrieving, in real time during a session ofthe candidate on an employment app operating on a computing device, afirst employment opportunity for the candidate based upon the candidateinformation and the employment preferences of the candidate; detecting,during the session, an employment command received from the candidatevia the computing device in response to presenting the first employmentopportunity to the candidate via the computing device; in response todetermining that the employment command is a first predefined singleswipe motion across a touchscreen of the computing device: automaticallypopulating an electronic application for the first employmentopportunity utilizing the candidate information; automaticallysubmitting the electronic application to an employer corresponding tothe first employment opportunity; and presenting a second employmentopportunity via the computing device.
 9. The method of claim 8, furthercomprising identifying the candidate information from the resume of thecandidate, wherein the candidate information includes at least one of aneducation level, an employment title, or an employment task.
 10. Themethod of claim 8, wherein the first predefined single swipe motion is aswipe motion across the touchscreen of the computing device in a firstdirection.
 11. The method of claim 10, further comprising saving, duringthe session, the second employment opportunity in the database forsubsequent access by the candidate in response to determining that theemployment command is a second predefined single swipe motion, whereinthe second predefined single swipe motion is a single swipe motionacross the touchscreen in a second direction.
 12. The method of claim10, further comprising skipping, during the session, the secondemployment opportunity without populating or submitting the electronicapplication for the candidate for the first employment opportunity inresponse to determining that the employment command is a thirdpredefined single swipe motion, wherein the third predefined singleswipe motion is a single swipe motion across the touchscreen in a thirddirection.
 13. The method of claim 10, further comprising flagging,during the session, the second employment opportunity as spam inresponse to determining that the employment command is a fourthpredefined single swipe motion, wherein the fourth predefined singleswipe motion is a single swipe motion across the touchscreen in a fourthdirection.
 14. A tangible computer readable medium includinginstructions which, when executed, cause a machine to: store employmentpreferences of a candidate and candidate information associated with aresume of the candidate; retrieve, in real time during a session of thecandidate on an employment app operating on a computing device, a firstemployment opportunity for the candidate based upon the candidateinformation and the employment preferences of the candidate; detect,during the session, an employment command received from the candidatevia the computing device in response to presenting the first employmentopportunity to the candidate via the computing device; in response todetermining that the employment command is a first predefined singleswipe motion across a touchscreen of the computing device: automaticallypopulate an electronic application for the first employment opportunityutilizing the candidate information; automatically submit the electronicapplication to an employer corresponding to the first employmentopportunity; and present a second employment opportunity via thecomputing device.
 15. The tangible computer readable medium of claim 14,wherein the instructions which, when executed, further cause the machineto identify the candidate information from the resume of the candidate,wherein the candidate information includes at least one of an educationlevel, an employment title, or an employment task.
 16. The tangiblecomputer readable medium of claim 14, wherein the instructions which,when executed, further cause the machine to receive the employmentpreferences from the candidate upon presenting at least one of a promptor preselected employment characteristics to the candidate via thecomputing device.
 17. The tangible computer readable medium of claim 14,wherein the first predefined single swipe motion is a swipe motionacross the touchscreen in a first direction.
 18. The tangible computerreadable medium of claim 17, wherein the instructions which, whenexecuted, further cause the machine to save the second employmentopportunity for subsequent access by the candidate in response todetermining that the employment command is a second predefined singleswipe motion, wherein the second predefined single swipe motion is asingle swipe motion across the touchscreen in a second direction. 19.The tangible computer readable medium of claim 17, wherein theinstructions which, when executed, further cause the machine to skip thesecond employment opportunity without populating or submitting theelectronic application for the candidate for the first employmentopportunity in response to determining that the employment command is athird predefined single swipe motion, wherein the third predefinedsingle swipe motion is a single swipe motion across the touchscreen in athird direction.
 20. The tangible computer readable medium of claim 17,wherein the instructions which, when executed, further cause the machineto flag the second employment opportunity as spam in response todetermining that the employment command is a fourth predefined singleswipe motion, wherein the fourth predefined single swipe motion is asingle swipe motion across the touchscreen in a fourth direction.